package com.wicket.okrbff.web.contorller;

import cn.hutool.core.bean.BeanUtil;
import com.wicket.okrbff.biz.service.ExecuteProgressService;
import com.wicket.okrbff.biz.service.dto.req.*;
import com.wicket.okrbff.biz.service.dto.res.*;
import com.wicket.okrbff.common.ro.OkrResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import java.util.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.wicket.okrapp.integration.FwAppExecuteProgressClient;
import com.wicket.okrapp.integration.dto.QueryStepExecuteProgressDetailRespDto;
import com.wicket.okrapp.integration.dto.QueryStepExecuteProgressDetailReqDto;
import com.wicket.okrbff.common.exception.Assert;
import com.wicket.okrapp.integration.dto.ResetExecuteProgressDisposeRespDto;
import com.wicket.okrapp.integration.dto.ResetExecuteProgressDisposeReqDto;
import com.wicket.okrapp.integration.dto.ResetExecuteProgressDisposeComRespDto;
import com.wicket.okrapp.integration.dto.ResetExecuteProgressDisposeComReqDto;
import com.wicket.okrcomponent.integration.FwCompInterfaceModeClient;
import com.wicket.okrcomponent.integration.dto.ImplementFileAddressAllPathComRespDto;
import com.wicket.okrcomponent.integration.dto.ImplementFileAddressAllPathComReqDto;

/**
 * @author ：
 * @date ：
 *
 *
 * @version 1.0
 */
@Api(value = "ExecuteProgress", tags = { "ExecuteProgress" })
@RestController
// @RequestMapping("/oms/executeProgress/")
public class ExecuteProgressController {

  @Autowired
  ExecuteProgressService executeProgressService;
/**
   * B3获取执行进度情况(公共)
   * gen by moon at 5/27/2023, 10:09:01 PM
   */
    @PostMapping("/oms/executeProgress/obtainExecuteProgressComBorder")
    @ApiOperation(value = "B3获取执行进度情况(公共)", response = OkrResult.class)
    public OkrResult<BffObtainExecuteProgressComBorderRespDto> obtainExecuteProgressComBorder(@RequestBody(required=false) @Validated BffObtainExecuteProgressComBorderReqDto reqDTO){
        return OkrResult.success(executeProgressService.obtainExecuteProgressComBorder(reqDTO));
    }
/**
   * B3重置执行进度处理(公共)
   * gen by moon at 6/12/2023, 8:38:22 PM
   */
    @PostMapping("/oms/executeProgress/resetExecuteProgressDisposeCom")
    @ApiOperation(value = "B3重置执行进度处理(公共)", response = OkrResult.class)
    public OkrResult<BffResetExecuteProgressDisposeComRespDto> resetExecuteProgressDisposeCom(@RequestBody(required=false) @Validated BffResetExecuteProgressDisposeComReqDto reqDTO){
        return OkrResult.success(executeProgressService.resetExecuteProgressDisposeCom(reqDTO));
    }
}
